Storage system and management method thereof

ABSTRACT

A storage system including a first storage apparatus having at least one volume to be provided to a host computer, a second storage apparatus connected to the first storage apparatus and having a second volume having a pair relationship with a first volume, and a management apparatus. The management apparatus includes a user interface for setting an attribute of functions related to at least one volume of the first storage apparatus and at least one volume of the second storage apparatus. The management apparatus compares an attribute of a first function related to the first volume and an attribute of a second function related to the second volume, and sets the attribute of the second function to be consistent with the attribute of the first function. The management apparatus there commands restoration of the first volume or the second volume to a state before the set the attribute operation.

CROSS REFERENCES

This is a continuation of U.S. application Ser. No. 12/014,924, filedJan. 16, 2008 now U.S. Pat. No. 8,151,047. This application relates toand claims priority from Japanese Patent Application No. 2007-194931,filed on Jul. 26, 2007. The entirety of the contents and subject matterof all of the above is incorporated herein by reference.

BACKGROUND

1. Technical Field

The present invention in general relates to a storage system and itsmanagement method, and in particular relates to technology for managingthe attributes of volumes in each of the plurality of storageapparatuses configuring the storage system.

2. Description of the Related Art

In order to prevent the loss of data due to a failure of a storageapparatus in a computer system, data stored in a certain logical volumein the storage apparatus is normally backed up in a logical volume ofphysically different storage apparatus configured redundantly. Forexample, remote copy (or remote mirroring) is known as a type oftechnology for backing up data. Specifically, remote copy defines alogical volumes (active volume) in an active storage apparatus and alogical volume (standby volume) in a standby storage apparatus as theremote copy pair volumes, and synchronously or asynchronously duplicatesdata in the active volume to the standby volume to back up data. By wayof this, even if a failure occurs in the active storage apparatus, thestandby storage apparatus can succeed the I/O access request from theapplication of the host computer.

With a large-scale computer system, demanded is a “nondisruptiveoperation” of switching the storage apparatus (or the logical volumetherein) without disrupting the execution of applications of the hostcomputer. Thus, even when disrupting the active storage apparatus forreasons other than failure such as for maintenance work, the hostcomputer is required to immediately switch to the standby storageapparatus in a state where the applications are in nondisruptiveoperation.

In order to achieve this kind of nondisruptive operation, a technologyhas been proposed for equipping the host computer with an alternate pathmodule and selectively switching the I/O access path to the storageapparatus with a pair relationship defined therein.

For example, Japanese Patent Laid-Open Publication No. 2006-11874(Patent Document 1) discloses a technique of selectively switching thestorage apparatus to which the host computer is trying to I/O accesswithout disrupting the applications. Specifically, Patent Document 1discloses a volume filter program used for causing a target program (OS,application program, etc.) of the host computer to recognize either oneof a copy source volume and a copy destination volume configuring avolume pair. When the volume filter program, for example, detects asituation where the active copy source volume cannot be used due tofailure or maintenance work, the volume filter program automaticallyswitches the I/O access path to the standby copy destination volume.

Such an alternate path module can also be applied, by using the virtualvolume function, to a storage system that provides the logical volumes(real volumes) in a physical device as virtual volumes in a plurality ofstorage controllers to the host computer. The virtual volume functionallows a system administrator to allocate applications to a virtualvolume without having to be aware of the logical volumes in the physicaldevice, thereby reducing workloads of the system administrator.

Japanese Patent Laid-Open Publication No. H10-283272 (Patent Document 2)discloses a technique that the storage server provides a virtual volumeto the host computer. Specifically, Patent Document 2 discloses that thestorage server detects the volumes in the respective storage systems,manages such volumes as storage areas that have not yet been allocatedto itself, and creates a virtual volume in the storage server based onone or more volumes in the foregoing unallocated storage areas so as toallocate a virtual volume to the host computer. In the I/O access fromthe host computer to the virtual volume, the storage server sequentiallyconverts the virtual volume into an address of the real volume andrelays the I/O access.

SUMMARY

When a volume in a storage apparatus is provided to a host computer, theadministrator normally pre-sets an attribute (property) for each“volume-related function” of the storage apparatus. As suchvolume-related function, there are, among others, a band limitationfunction for limiting the I/O transfer bandwidth to the respectivevolumes, a capacity expansion function for each volume. Conventionally,even when a pair relationship was defined in volumes of differentstorage apparatuses, the administrator set the function attribute to therespective volumes of the respective storage apparatuses. Further, whenthe specification of the respective storage apparatuses is different,the function would also differ in many cases, and the setting of thefunction attribute became complex.

In addition, other anticipated cases include setting the function onlyin an active volume and not setting the corresponding function in astandby volume among the volumes defined as a pair relationship, andalso cases where the setting of the function attribute in both volumesis different.

Thus, with a computer system capable of selectively switching volumesusing the alternate path module as described above, if the setting ofthe function attribute in the volumes defined in a pair relationship isdifferent, the system performance in the volume after the I/O accesspath is switched will deteriorate, and, in a worst case scenario, thesystem will break down and interfere with the operation of the system.

Accordingly, an object of the present invention is to provide a storagesystem and its management method capable of efficiently setting thevolume-related function of volumes defined in a pair relationship.

More specifically, an object of the present invention is to provide astorage system and its management method capable of checking theconsistency and validity of the volume-related function set betweenvolumes defined in a pair relationship.

Another object of the present invention is to provide a storage systemand its management method capable of normally succeeding the I/O accesswithout deteriorating the system performance even when the I/O accesspath to the volume is switched with the alternate path program.

The additional objects of the present invention will become clear fromthe ensuing embodiments.

In order to achieve the foregoing objects, the present inventionpossesses the following technical features.

Specifically, according to one aspect of the present invention, providedis a storage system comprising a first storage apparatus having at leastone volume to be provided to a host computer, a second storage apparatusconnected to the first storage apparatus, and having a second volumehaving a pair relationship with a first volume in the first storageapparatus, and a management apparatus connected to the first storageapparatus and the second storage apparatus and configured to manage thefirst storage apparatus and the second storage apparatus. The managementapparatus includes a user interface for setting an attribute of afunction related to at least one volume of the first storage apparatusand an attribute of a function related to at least one volume of thesecond storage apparatus. Moreover, the management apparatus comparesthe attribute of a first function related to the first volume and theattribute of a second function related to the second volume, and outputsthe result of the comparison to the user interface.

According to another aspect of the present invention, provided is astorage system comprising a first storage apparatus having at least onevolume to be provided to a host computer, a second storage apparatusconnected to the first storage apparatus, and having a second volumedefined in a pair relationship with a first volume in the first storageapparatus, and a management apparatus connected to the first storageapparatus and the second storage apparatus, and for managing the firststorage apparatus and the second storage apparatus. The managementapparatus includes a user interface for setting an attribute of afunction related to at least one volume of the first storage apparatus.Moreover, the management apparatus receives a setting request of anattribute of a function related to the first volume directed to thefirst storage apparatus via the user interface, determines whether theattribute of the function in the received setting request is applicableto the first storage apparatus, and outputs the result of thedetermination to the user interface.

According to yet another aspect of the present invention, provided is astorage system comprising a storage apparatus having a real volumeformed in a storage medium holding actual data to be handled by anapplication program in a host computer, a first storage controllerconnected to the storage apparatus and configured to control the storageapparatus, a second storage controller connected to the storageapparatus and configured to control the storage apparatus, and amanagement apparatus connected to the storage apparatus and the storagecontroller and configured to manage the storage apparatus and thestorage controller. The first storage controller includes a firstvirtual volume, which is provided to an application program in the hostcomputer, associated with the real volume. The second storage controllerincludes a second virtual volume, which is provided to an applicationprogram in the host computer, associated with the real volume. Themanagement apparatus includes a user interface for setting an attributeof a function related to at least one volume of the first storagecontroller and an attribute of a function related to at least one volumeof the second storage controller. Moreover, the management apparatuscompares the attribute of a first function related to the first virtualvolume and the attribute of a second function related to the secondvirtual volume, and outputs the result of the comparison to the userinterface.

According to still another aspect of the present invention, provided isa storage system comprising a storage apparatus having a real volumeformed in a storage medium holding a data entity to be handled by anapplication program in a host computer, a first storage controllerconnected to the storage apparatus and configured to control the storageapparatus, a second storage controller connected to the storageapparatus and configured to control the storage apparatus, and amanagement apparatus connected to the storage apparatus and the storagecontroller and configured to manage the storage apparatus and thestorage controller. The first storage controller includes a firstvirtual volume, which is provided to an application program in the hostcomputer, associated with the real volume. The second storage controllerincludes a second virtual volume, which is provided to an applicationprogram in the host computer, associated with the external volume. Themanagement apparatus receives a setting request of an attribute of afunction related to the first virtual volume directed to the firststorage controller via the user interface, determines whether theattribute of the function in the received setting request is applicableto the first storage controller, and outputs the result of thedetermination to the user interface.

According to still another aspect of the present invention, the storagesystem of this invention can be understood to be an invention of aprogram and an invention of a method.

According to the present invention, the system administrator will beable to efficiently set the function attribute of volumes defined as apair relationship in a storage system, and easily confirm theconsistency and validity of the function attribute between volumes.

In addition, according to the present invention, the storage system isable to normally succeed the I/O access and continue the storage servicewithout deteriorating the system performance even when the I/O accesspath is switched by the alternate path program between the volumesdefined in a pair relationship.

DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram showing the configuration of a computer systemaccording to an embodiment of the present invention;

FIG. 2 is a diagram showing the configuration of a host computer in thecomputer system according to an embodiment of the present invention;

FIG. 3 is a diagram showing the configuration of a storage apparatus inthe computer system according to an embodiment of the present invention;

FIG. 4 is a diagram showing the configuration of a management apparatusin the computer system according to an embodiment of the presentinvention;

FIG. 5 is a diagram showing an example of an apparatus management tablein the management apparatus according to an embodiment of the presentinvention;

FIG. 6 is a diagram showing an example of a volume allocation managementtable in the management apparatus according to an embodiment of thepresent invention;

FIG. 7 is a diagram showing an example of a storage area configurationmanagement table in the management apparatus according to an embodimentof the present invention;

FIG. 8 is a diagram showing an example of a pair management table in themanagement apparatus according to an embodiment of the presentinvention;

FIG. 9 is a diagram showing an example of a network I/F management tablein the management apparatus according to an embodiment of the presentinvention;

FIG. 10 is a diagram showing an example of a cache memory managementtable in the management apparatus according to an embodiment of thepresent invention;

FIG. 11 is a diagram showing an example of a LUSE management table inthe management apparatus according to an embodiment of the presentinvention;

FIG. 12 is a diagram showing an example of a user interface concerningthe function attribute setting in the management apparatus according toan embodiment of the present invention;

FIG. 13 is a flowchart explaining the operation of a function settingstatus monitoring program in the management apparatus according to anembodiment of the present invention;

FIG. 14 is a diagram showing an example of a warning screen presented bythe function setting status monitoring program in the managementapparatus according to an embodiment of the present invention;

FIG. 15 is a flowchart explaining the operation of a function settingcommand program in the management apparatus according to an embodimentof the present invention;

FIG. 16 is a flowchart explaining the operation of a function settingcommand program in the management apparatus according to an embodimentof the present invention;

FIG. 17 is a flowchart explaining the operation of a function settingcommand program in the management apparatus according to an embodimentof the present invention;

FIG. 18 is a diagram showing the configuration of a computer systemaccording to an embodiment of the present invention;

FIG. 19 is a diagram showing the configuration of a storage controllerin the computer system according to an embodiment of the presentinvention;

FIG. 20 is a diagram showing the configuration of a management apparatusin the computer system according to an embodiment of the presentinvention;

FIG. 21 is a diagram showing an example of an external connectionconfiguration management table in the management apparatus according toan embodiment of the present invention;

FIG. 22 is a flowchart explaining the operation of a function settingstatus program in the management apparatus according to an embodiment ofthe present invention; and

FIG. 23 is a flowchart explaining the operation of a function settingcommand program in the management apparatus according to an embodimentof the present invention.

DETAILED DESCRIPTION

Embodiments of the present invention are now explained with reference tothe attached drawings.

First Embodiment

This embodiment explains a storage system that monitors the settingstatus of function attributes pertaining to the active volumes and thestandby volumes in different storage apparatuses defined in a pairrelationship.

(1) System Configuration

(1-1) Configuration of Computer System

FIG. 1 is a diagram showing the configuration of a computer system 1according to an embodiment of the present invention. As shown in FIG. 1,the computer system 1 includes a host computer 3, a plurality of storageapparatuses 4 operatively connected thereto via a storage network 2A,and a management apparatus 5 operatively connected to these componentsvia a management network 2B. The computer system 1, for example, may beconfigured as a business system of banks or a seat reservation businesssystem of airline companies.

The storage network 2A is primarily a network system to be used for thecommunication based on an I/O access between the host computer 3 and thestorage apparatus 4. The storage network 2A may be, for example, a LAN,Internet or SAN (Storage Area Network), and is typically configured toinclude a network switch, hub or the like. In this embodiment, thestorage network 2A may be configured from a fibre channel protocol-basedSAN (FC-SAN).

The management network 2B is a network to be used for the communicationupon the management apparatus 5 managing the host computer 3 and thestorage apparatus 4. In this embodiment, the management network 2B maybe configured from an IP protocol-based LAN. Nevertheless, this does notmean that the storage network 2A and the management network 2B arealways configured as individual networks. For example, when the storagenetwork 2A is configured from an IP protocol-based network, this willmean that the two networks are formed in a single network system.

The host computer 3, for example, is a core computer in a businesssystem of banks or a seat reservation business system of airlinecompanies. Specifically, the host computer 3 comprises hardwareresources such as a processor, a memory, a communication interface, anda local I/O device, and also comprises software resources such as adevice driver, an operating system (OS), and an application program(FIG. 2). Thus, the host computer 3 executes various programs under thecontrol of the processor, and realizes desired processing based on thecooperative effect with the hardware resources. For example, the hostcomputer 3 I/O accesses the logical units or logical volumes (VOL:hereinafter simply referred to as “volumes”) in the storage apparatus 4described in detail later and realizes a desired business system byexecuting business application programs based on the OS and under thecontrol of the processor.

The host computer 3 of this embodiment comprises an alternate pathmodule, and is configured to selectively switch the I/O accessdestination of the application program. Such an alternate path module,for example, is implemented with an alternate path program loaded in thehost computer 3 and operated as a device driver. The application programin the host computer 3 I/O accesses the volumes in the storage apparatus4 via the alternate path program positioned at a lower level. An I/Oaccess path is a path used by the application program upon I/O accessinga specific volume, and, in particular, this sometimes refers to the pathbetween the alternate path program and the specific volume. Thealternate path program uniquely specifies the I/O access path based on acombination of the identifier of the network interface of the hostcomputer 3 and the identifier of the network interface of the storageapparatus 4, and thereby recognizes the intended volume.

The storage apparatus 4 is an apparatus for providing data storageservice to the host computer 3, and includes one or more volumes to beI/O accessed by the host computer 3.

A volume is a “logical storage” that can be recognized by an applicationprogram in the host computer 3. A volume is formed in one or morephysical devices as the physical storage medium holding data. In atypical implementation, a volume is formed on a physical device via anintermediate logical device. Specifically, in view of increasing thecapacity and reliability, RAID (Redundant Arrays of Independence Disks)technology may be used to define a virtual device as a RAID group or anarray group based on several physical devices. Then, one or more logicaldevices are associated with the virtual device, and logical volumes areassociated with each of such logical devices. For the purpose offacilitating the understanding of the present invention, the followingexplanation will be based on the assumption that the intermediatelogical device is omitted and the logical volume is formed on thephysical device.

A logical volume identifier is associated with the volumes, and,therefore, the host computer 3 recognizes a specific volume by using thelogical volume identifier. The logical volume identifier isidentification information for identifying the logical device (in otherwords, the volume) to be managed for each controller 43 as describedlater.

In this embodiment, a storage apparatus 4 in an active mode (activestorage apparatus 4A) and a storage apparatus 4 in a standby mode(standby storage apparatus 4B) are provided, and these apparatusesrespectively provide an active volume and a standby volume to the hostcomputer 3.

The storage apparatus 4 comprises a remote copy (or mirroring) functionfor performing backup of data.

The remote copy function duplicates data (volumes) synchronously orasynchronously between the volumes (remote copy pair volumes) defined asa pair relationship. The remote copy function, for example, isimplemented with a remote copy program loaded in the storage apparatus4. In synchronous remote copy, the active storage apparatus 4A thatreceived a write request from the host computer 3 writes data in its ownvolume according to the foregoing write request, requests the writing ofdata into the volume of the standby storage apparatus 4B in a pairrelationship, and then notifies the host computer 3 of the completion ofI/O access at the point in time the writing of data into the standbystorage apparatus 4B is complete. In contrast, in asynchronous remotecopy, copy is performed between the remote copy pair volumesindependently (asynchronously) with the write request from the hostcomputer 3. When a volume is defined as a new pair relationship in thestandby storage apparatus 4 with the volume in the currently-operatedactive storage apparatus 4, data is transferred from the active volumeto the newly defined standby volume by operation of an initial copy.

The computer system 1 of this embodiment realizes the data storageservice of nondisruptive operation by way of duplicating data (volumes)in different storage apparatuses 4 using a remote copy function, andimplementing the alternate path program in the occurrence of a failureor maintenance work.

Specifically, the active storage apparatus 4A transfers data (e.g., dataaccording to a write request) in the active volume to the standby volumein the storage apparatus 4B via the storage network 2A by using theremote copy function of the storage apparatus 4A. Here, the alternatepath programs in the host computer 4 set the I/O access path to enablethe recognition of the active volume and the standby volume defined in apair relationship. If the active volume can not be used due to theoccurrence of a failure or maintenance work in the active storageapparatus 4A, the alternate path program in the host computer 3 selectsthe I/O access path to the standby volume in substitute for the I/Oaccess path to the active volume in order to continue the data storageservice.

In general, there may be two techniques of making the host computer 3recognize the active volume and the standby volume as the identicalvolume. The first technique is for the alternate path program to treatthe active volume and the standby volume as the same volume. This isaccomplished in a manner that the alternate path program in the hostcomputer 3 retains the same identification information associated withidentification information for each identifying the active volume andthe standby volume. The second technique is where the storage apparatus4 allows the alternate path program to recognize the active volume andthe standby volume as the same volume. This is accomplished in a mannerthat the storage apparatus 4 actually providing the volume dynamicallyallocating identification information of the volume retained by thealternate path program to its own volume.

In addition to the remote copy function, the storage apparatus 4comprises various functions (e.g., a volume creation function, a bandlimiting function, a cache residency function, volume expansionfunction). These functions are validated/invalidated in accordance withthe setting of their function attributes. Such functions may beimplemented in the storage apparatus 4 depending on its specification.

The volume creation function is a function for creating a volume in thephysical device of the disk drive 41, and deleting the existing volumes.The volume creation function may include creating and deleting an arraygroup formed based on the disk drive 41.

The band limiting function is a function for controlling the maximumbandwidth of the network I/F 44, and thus is used to set the maximumbandwidth for each port of the network I/F 44. As a result of settingthe maximum bandwidth for each port, it is possible to control the I/Otraffic to the one or more volumes allocated to the port. In thisspecification, this function is referred to as the “PPCT (PrioritizedPort Control) function.”

The cache residency function is a function for allowing the overallvolume to be provided to the host computer 3 to reside in the cachememory 45, and cancelling the status of such residency. In thisspecification, this function is referred to as the “DCR (Dynamic CacheResidency) function.”

The volume expansion function is a function for combining the volumes inthe same storage apparatus 4, and expanding the capacity of the volumesto be provided to the host computer 3. In this specification, thisfunction is referred to as the LUSE (LU Size Expansion) function.

(1-2) Configuration of Host Computer

FIG. 2 is a diagram showing the configuration of the host computer 3 inthe computer system 1 according to an embodiment of the presentinvention.

As shown in FIG. 2, the host computer 3 comprises a processor 31, amemory 32 that functions as a main memory of the processor 31, a networkinterface (I/F) 33 for connecting to the storage apparatus 4 via thestorage network 2A, an output unit 34 such as a display, an input unit35 such as a keyboard and a mouse, and a management port 36 forconnecting to the management network 2B, and these components areinterconnected via an internal bus 37.

The processor 31 governs the operational control of the host computer 3,and allows the host computer 3 to realize prescribed processing orfunctions by executing the various programs stored in the memory 32,cooperating with other hardware resources.

The memory 32, for example, is configured from a RAM and/or a ROM, andstores various programs and data to be used by the processor 31. Thevarious programs are arbitrarily loaded into the memory in part or inwhole from an auxiliary storage apparatus not shown. FIG. 2representatively shows an application program 321, an alternate pathprogram 322, and a host configuration program 323.

The application program 321 is a program for allows the host computer 3to realize desired operations under the control of the processor 31.

The alternate path program 322 is a program for selecting the I/O accesspath to the volume to which the application program 321 is attempting toI/O access. The alternate path program 322 is located at a lower levelthan the application program 321, and selects one I/O access path byreceiving the I/O access request issued by the application program 321.

The host configuration program 322 is a program for managing the systemconfiguration information in the host computer 3. Further, the hostconfiguration program 322 sends system configuration information bycommunicating with the management apparatus 5 connected via themanagement port 36.

(1-3) Configuration of Storage Apparatus 4

FIG. 3 is a diagram showing the configuration of the storage apparatus 4in the computer system 1 according to an embodiment of the presentinvention. The basic configuration of the storage apparatus 4 is thesame for both active and standby storage apparatuses, and the followingexplanation will be regarding the active storage apparatus 4A.

As shown in FIG. 3, the storage apparatus 4 comprises a disk drive 41including a physical device, a controller 42 for performing the coreprocessing of the data storage service, a memory 44 that serves as amain memory of the processor not shown in the controller 42, one or morenetwork interfaces (I/F) 42 for connecting to the storage network 2A, acache memory 45 for caching the application data associated with the I/Oaccess, and a management port 46 for connecting to the managementnetwork 2B, and these components are interconnected via an internal busaround the controller 42.

The disk drive 41 is configured by including storage mediums such as aplurality of hard disk drives or nonvolatile memories as physicaldevices. In the disk drive 41, as described above, a logical device isformed in the RAID group (array group) as the virtual device formed withRAID technology, and a logical volume is further allocated thereto. InFIG. 3, the virtual device and the logical device as the intermediatelogical devices are omitted.

The controller 42 is a core component that performs data storageprocessing for the host computer 3 by executing the I/O processingprogram stored in the memory 43 under the control of the processor (notshown). The controller 42, for example, fetches and interprets a commandthat was received by the network I/F 44 and stored into the memory 44according to the I/O processing program, and, if such a command isinterpreted as a write command, the controller stores the correspondingdata temporarily stored in the cache memory 45 into a prescribed storagearea (block) of the disk drive 42.

The memory 44 is configured from, for example, a RAM and/or a ROM, andstores various programs and data to be used by the processor of thecontroller 42. For instance, the memory 44 stores commands (I/Ocommands) concerning the I/O access request and control information forcontrolling the storage apparatus 4 received from the host computer 3via the network I/F 42. The various programs are arbitrarily loaded intothe memory in part or in whole from an auxiliary storage apparatus notshown. FIG. 3 representatively shows an I/O processing program 431, astorage configuration program 432, and a remote copy program 433.

The I/O processing program 431 is a program for achieving the datastorage service to the host computer 3, and performs processingaccording to the I/O access request such as a write request or a readrequest from the host computer 3.

The storage configuration program 432 is a program for managing theconfiguration of the storage apparatus 4. Specifically, the storageconfiguration program 432 is used to validate or invalidate variousfunctions such as a volume creation function, a PPC function (i.e., bandlimiting function), a DCR function (i.e., cache residency function), anLUSE function (i.e., volume expansion function), and a remote copyfunction in the storage apparatus 4. The storage configuration program432 executes the setting of the function attributes for validating orinvalidating the various functions according to function setting commandsent from the management apparatus 5. The storage configuration program431 also sends configuration information such as the function attributesof the storage apparatus 4 to the management apparatus 5.

The network I/F 44 is equipped with a port (not shown), and is a circuitboard that functions as a communication interface for communicating withthe other apparatuses connected to the port via the storage network 2A.The storage apparatus 4 of this embodiment includes a network I/F 44 afor connecting to the host computer 3, and a network I/F 44 b forconnecting to the other party's storage apparatus 4 (i.e., the standbystorage apparatus 4B) in a pair relationship. When the network I/F 44receives an I/O access command such as a write command or a read commandfrom the storage network 2A, it writes this command in the memory underthe control of the controller 42. In addition, under the control of thecontroller 42, the network I/F 42 outputs the application data read fromthe disk drive 41 and cached in the cache memory 45 to the storagenetwork 2A for sending such application data to the apparatus requestingdata (for instance, the host computer 3).

The cache memory 45 temporarily stores data to be exchanged between thehost computer 3 and the disk drive 41 for enhancing system performanceto the host computer 3. Specifically, the cache memory 45 temporarilystores data associated with the write command received from the hostcomputer 3 and the data read from the disk drive 41 according to theread command.

The management port 46 is a communication port for connecting to themanagement apparatus 5 via the management network 2B. The managementport 46, for instance, is realized as an Ethernet (registered trademark)device.

(1-4) Configuration of Management Apparatus

FIG. 4 is a diagram showing the configuration of the managementapparatus 5 in the computer system 1 according to an embodiment of thepresent invention. The management apparatus 5 may be configured, forexample, from a general-purpose computer, and realizes the desiredprocessing by executing various management programs in the operatingsystem.

Referring to FIG. 4, the management apparatus 5 comprises a processor51, a memory 52 that serves as a main memory of the processor 51, amanagement port 53 for connecting to the management network 2B, anoutput unit 54 such as a display device for outputting the processingresults, and an input unit 55 such as a keyboard and a mouse, and thesecomponents are interconnected via an internal bus 56.

The memory 52 stores, as the management programs of the storage system,a configuration information collection program 521, a function settingstatus monitoring program 522, a function setting command program 523,and a user interface program 524. The various programs are arbitrarilyloaded into the memory 52 for use by the processor 51 in part or inwhole from an auxiliary storage apparatus not shown.

The memory 52 also stores various management tables to be referred to bythese management programs. In this embodiment, stored are an apparatusmanagement table 500, a volume allocation management table 600, astorage area configuration management table 700, a pair management table800, a network I/F management table 900, a cache memory management table1000, and a LUSE management table 1100.

The function setting status monitoring program 522 is a program formonitoring the setting status of function attributes of thevolume-related functions in the storage apparatus 4. Specifically, thefunction configuration status monitoring program 522 warns the systemadministrator when an inconsistent function attribute is being setbetween the storage apparatuses 4 having the remote copy pair volumes.

The function configuration status monitoring program 522 also provides asetting status of function attributes for each function to the systemadministrator via the user interface.

The function setting command program 523 is a program for commanding thefunction setting to the storage apparatus 4 only when there isconsistency in the function attribute to be set between the storageapparatuses 4 having the remote copy pair volumes. When there is noconsistency in the function attribute tentatively set between thestorage apparatuses 4 having the remote copy pair volumes, the functionsetting command program 523 restores the function attribute to a statebefore the tentative setting, and warns the system administrator.

The configuration information collection program 521 is a program forcollecting the configuration information from the storage apparatus 4via the management network 2B. The configuration information collectionprogram 521 updates the fields in the various management tablesdescribed later based on the configuration information collected fromthe storage apparatus 4.

The user interface program 524 is a program for providing a userinterface to the system administrator for managing the host computer 3and the storage apparatus 4. The user interface program 524 receives thesetting of the function attribute from the system administratoroperating the input unit 55, and delivers this as a function settingrequest to the function setting status monitoring program 522 or thefunction setting command program 523. The user interface program 524receives the execution result of these programs and outputs such resultto the output unit 54.

(2) Configuration of Various Management Tables

(2-1) Apparatus Management Table 500

FIG. 5 is a diagram showing an example of the apparatus management table500 in the management apparatus 5 according to an embodiment of thepresent invention. The apparatus management table 500 is a table forspecifying the apparatuses such as the host computer 4 and the storageapparatus 4 to be managed by the management apparatus 5. The apparatusmanagement table 500 also manages the storage apparatus 4 to be managedregarding which function it comprises.

As shown in FIG. 5, the apparatus management table 500 is configuredfrom an apparatus ID field 501 for registering apparatus IDs to be usedby the management apparatus 5 to uniquely identify apparatuses such asthe host computer 3 and the storage apparatus 4, a type field 502 forregistering the type of apparatus, an apparatus information field 503for registering other information to be used for identifying apparatusessuch as the vendor name, model name, serial number, and host name, an IPaddress field 504 for registering IP addresses of the management portsto be connected to the apparatuses, and a function ID field 505 forregistering the functions that can be provided by the storage apparatus4.

Regarding the functions registered in the function ID field 505,regardless of whether the storage apparatus 4 has validated suchfunctions, all providable functions are registered depending on thespecification of the storage apparatus 4. This example shows that thestorage apparatuses ST1 and ST2 comprise the PPC function, the DCRfunction, and the LUSE function depending on their specification.

The apparatus management table 500, for example, is created by thesystem administrator operating the user interface of the managementapparatus 5. Alternatively, the apparatus management table may beconfigured to be automatically created using a name service or the likein the storage network 2A or the management network 2B.

(2-2) Volume Allocation Management Table

FIG. 6 is a diagram showing an example of the volume allocationmanagement table 600 in the management apparatus 5 according to anembodiment of the present invention. The volume allocation managementtable 600 is a table for managing the allocation status of volumes inthe storage apparatus 4. The volume allocation management table 600 iscreated and updated by the management apparatus 5 executing theconfiguration information collection program 521.

As shown in FIG. 6, the volume allocation management table 600 isconfigured from a storage ID field 601 for registering identifiers foruniquely identifying the storage apparatus 4, a volume ID field 602 forregistering identifiers for uniquely identifying the volume in thestorage apparatus 4, a capacity field 603 for registering the logicalstorage capacity allocated to the volume, an AGID field 604 forregistering identifiers for uniquely identifying the array group (AG)configuring the volumes in the storage apparatus 4, an allocationdestination field 605 for registering identifiers for specifying theallocation destination of volumes in the management apparatus 5, anapplication program (AP) field 606 for registering identifiers foruniquely identifying the application programs using the volumes, and alogical drive ID field 607 for registering logical drive IDs in the hostcomputer 3 configured from the volumes.

When the LUSE function is validated for the volumes of the storageapparatus 4, the primary volumes configuring the LUSE volume areregistered in the volume allocation management table 600. Together withthe volume ID of the primary volume, “(LUSE)” is registered in thevolume ID field 602.

(2-3) Storage Area Configuration Management Table 700

FIG. 7 is a diagram showing an example of the storage area configurationmanagement table 700 in the management apparatus 5 according to anembodiment of the present invention. The storage area configurationmanagement table 700 is a table for managing the configuration of thevolume or array group. The storage area configuration management table700 is created and updated by the management apparatus 5 executing theconfiguration information collection program.

As shown in FIG. 7, the storage area configuration management table 700is configured from a storage ID field 701, an AGID field 702, a logicalstorage capacity field 703 for registering the logical storage capacityof the array group, a RAID level field 704 for registering the RAIDconfiguration of the array group, a disk ID field 705 for registeringidentifiers for uniquely identifying the disk drives configuring thearray group in the storage apparatus 4, and a physical storage capacityfield 706 for registering the physical storage capacity of the diskdrive.

The disk drives that are not configuring the array group are compliedfor each storage apparatus 4. In this case, the AGID field 702, thelogical storage capacity field 703, and the RAID level field 704 will benull.

(2-4) Pair Management Table 800

FIG. 8 is a diagram showing an example of the pair management table 800in the management apparatus 5 according to an embodiment of the presentinvention. The pair management table 800 is a table for managing thecombination of the active volume and standby volume in the computersystem and the combination of the storage apparatuses 4 capable offorming a pair. The pair management table 800 is created and updated bythe management apparatus 5 executing the configuration informationcollection program.

As shown in FIG. 8, the pair management table 800 is configured from astorage ID field 801 for registering identifiers for uniquelyidentifying the storage apparatus 4 having volumes having a pairrelationship in the management apparatus 5, a volume ID field 802 forregistering identifiers for uniquely identifying the volume having apair relationship in the storage apparatus 4, a copy role field 803 forregistering the current “role” regarding whether the volume is an activevolume or a standby volume, a copy status field 804 for registering theremote copy status, a pair storage apparatus ID field 805 forregistering identifiers for uniquely identifying the storage apparatus 4(pair storage apparatus) having a volume (remote copy pair volume)forming a pair with the foregoing volume, and the remote copy pairvolume ID field 806 for registering identifiers for uniquely identifyingthe remote copy pair volumes in the pair storage apparatus.

When the fields other than the storage apparatus ID field 805 and thepair storage apparatus ID field 806 are null, this shows that thestorage apparatus 4 registered in the storage apparatus ID field 801 andthe pair storage apparatus ID field 805 is able to define its volumes asa pair relationship.

(2-4) Network I/F Management Table 900

FIG. 9 is a diagram showing an example of the network I/F managementtable 900 in the management apparatus 5 according to an embodiment ofthe present invention. The network I/F management table 900 is a tablefor managing the configuration of the network I/F 42 of the storageapparatus 4 and the setting status of the PPC function. The network I/Fmanagement table 900 is created and updated by the management apparatus5 executing the configuration information collection program 521.

As shown in FIG. 9, the network I/F management table 900 is configuredfrom a storage apparatus ID field 901, a network I/FID field 902 forregistering identifiers for uniquely identifying the network I/F 42 ofthe storage apparatus 4, a maximum transfer bandwidth field 903 forregistering the maximum bandwidth of the network I/F 42, a volume IDfield 904 for registering identifiers for uniquely identifying volumesallocated to the network I/F 42 in the storage apparatus 4, a PPC setvalue field 905 for registering the set value of the PPC to the volume,and a remote copy exclusive field 906 for registering whether thenetwork I/F 42 is being used exclusively for remote copy.

“N/A” is registered in the PPC set value field 905 when the storageapparatus 4 does not comprise a PPC function, and is null when the PPCitself is not set. “YES” is registered in the remote copy exclusivefield 906 when the network I/F 42 is being used exclusively for remotecopy, and is null when it is not.

(2-5) Cache Memory Management Table 1000

FIG. 10 is a diagram showing an example of the cache memory managementtable 1000 in the management apparatus 5 according to an embodiment ofthe present invention. The cache memory management table 1000 is a tablefor managing the configuration of the cache memory 45 of the storageapparatus 4 and the setting status of DCR. The cache memory managementtable 1000 is created and updated by the management apparatus 5executing the configuration information collection program 521.

As shown in FIG. 10, the cache memory management table 1000 isconfigured from a storage apparatus ID field 1001, a cache memory IDfield 1002 for registering identifiers for uniquely identifying thecache memory 45 of the storage apparatus 4 in the storage apparatus 4, acapacity field 1003 for registering the capacity of the cache memory,and a DCR setting information field 1004 for registering the settingstatus of DCR of the cache memory. The DCR setting information field1004 includes a volume ID field 10041 for registering identifiers foruniquely identifying the volume residing in the cache memory in thestorage apparatus 4, and a volume capacity field [10042] for registeringthe capacity of the volume.

“N/A” is registered in the respective sub fields if the storageapparatus 4 does not comprise a DCR function, and the respective subfields become null when DCR is not set.

(2-6) LUSE Management Table 1000

FIG. 11 is a diagram showing an example of the LUSE management table1000 in the management apparatus 5 according to an embodiment of thepresent invention. The LUSE management table 1000 is a table formanaging the setting status of the LUSE function in the storageapparatus 4. The LUSE management table is created and updated by themanagement apparatus 5 executing the configuration informationcollection program.

As shown in FIG. 11, the LUSE management table 1100 is configured from astorage apparatus ID field 1101, a LUSE volume ID field 1102 forregistering identifiers for uniquely identifying the LUSE volume of thestorage apparatus 4 in the storage apparatus 4, and a LUSE configurationinformation field 1103 for registering the configuration information ofthe LUSE volume. The LUSE configuration information field 1103 isconfigured from a volume ID field 11031 for registering identifiers foruniquely identifying the volume configuring the LUSE volume in thestorage apparatus 4, a capacity field 11032 for registering the logicalstorage capacity of the volume, and an AGID field 11033 for registeringidentifiers for uniquely identifying the array group configuring thevolume in the storage apparatus 4.

“N/A” is registered in the LUSE volume ID field 1102 and the LUSEconfiguration information field 1103 if the storage apparatus 4 does notcomprise a LUSE function, and these fields become null when LUSE is notset.

(3) Explanation of Programs

(3-1) Configuration Information Collection Program 521

The configuration information collection program 521 is a program forcollecting configuration information from the storage apparatus 4 andthe host computer 3 to be managed by the management apparatus 5. Theconfiguration information collection program 521 is periodicallyexecuted under the control of the processor of the management apparatus5. Alternatively, the configuration information collection program 521may also be executed based on an execution command from the systemadministrator, or according to a call from another program in themanagement apparatus 5.

Specifically, the configuration information collection program 521refers to the apparatus management table 500, and issues a configurationinformation request to all storage apparatuses 4 and the host computer 3registered in the apparatus ID field 501 using the IP addresses of theIP address field 504. The storage apparatus 4 that received theconfiguration information request collects its own configurationinformation by executing the storage configuration program, and sendssuch configuration information to the management apparatus 5. Likewise,the host computer 3 that received the configuration information requestcollects its own configuration information, and sends such configurationinformation to the management apparatus 5. The configuration informationcollection program 521 updates the corresponding fields of variousmanagement tables including the volume allocation management table 600,the storage area configuration management table 700, the pair managementtable 800, the network I/F management table 900, the cache memorymanagement table 1000, and the LUSE management table 1100 based on theconfiguration information sent from the respective apparatuses to bemanaged by the management apparatus 5.

(3-2) Explanation of Operation of Function Configuration StatusMonitoring Program 522

The function setting status monitoring program 522 is a program forcomparing the function attributes set between different storageapparatuses 4 having the remote copy pair volumes defined by the remotecopy function of the storage apparatus 4, and, upon determining that theset function attribute is different, notifying the different contents tothe system administrator. The function setting command program 523, forexample, is executed by a setting request of the function attributebeing input from the system administrator via a user interface as shownin FIG. 12. In this specification, the setting and cancellation ofattributes regarding the volume-related functions are simply referred toas the setting of function attributes or function setting.

FIG. 13 is a flowchart explaining the operation of the function settingstatus monitoring program 522 in the management apparatus 5 according toan embodiment of the present invention. The function setting statusmonitoring program 522 is executed periodically by the managementapparatus 5, or executed based on a command from the systemadministrator.

Referring to FIG. 13, when the function setting status monitoringprogram 522 is executed, it foremost calls the configuration informationcollection program, and thereby updates the various management tablesincluding the volume allocation management table 600, the storage areaconfiguration management table 700, the pair management table 800, thenetwork I/F management table 900, the cache memory management table1000, and the LUSE management table 1100 to the latest contents (STEP1301).

The function setting status monitoring program 522 subsequently refersto the pair management table 800, extracts one active volume among theactive volumes defined in a pair relationship (STEP 1302), and selectsthe remote copy pair volume of the extracted active volume as thestandby volume (STEP 1303).

Specifically, the function setting status monitoring program 522extracts the volumes registered in the volume ID field 802 in which thecopy role field 803 of the pair management table 800 is “ACTIVE” as theactive volumes, and extracts the volumes registered in the remote copypair volume ID field 806 as the standby volumes. For example, ifaccording to the pair management table 800 shown in FIG. 8, the functionsetting status monitoring program 522 extracts the volume “VOL001” as anactive volume, and extracts the volume “VOL002” as a standby volume. Inthis case, the function setting status monitoring program 522 may alsorefer to the volume allocation management table 600, and extract thevolumes used by the same application program and allocated to the samelogical drive as active volumes and standby volumes, respectively. Byway of this, the remote copy pair volumes having an I/O access path thatcan be selectively switched based on the same path alternating programin the host computer 3 will be extracted.

Subsequently, the function setting status monitoring program 522 refersto the apparatus management table 500, and extracts one function of thestorage apparatus having the extracted active volume from the functionID field 505 (STEP 1304).

The function setting status monitoring program 522 thereafter determineswhether the setting of the extracted function attributes is equalregarding the extracted active volume and standby volume (STEP 1305).

When the function setting status monitoring program 522 determines thatthe setting of the extracted function attributes is not equal, as shownin FIG. 14, it presents to the system administrator a warning screenshowing that the settings of the function attributes regarding theactive volume and standby volume are different (STEP 1306).

Subsequently, the function setting status monitoring program 522determines whether all functions of the storage apparatus 5 have beenextracted (STEP 1307), and, when there is a function that has not yetbeen extracted (STEP 1307; No), it returns to the processing at STEP1304. Further, when the function setting status monitoring program 522determines that all functions have been extracted (STEP 1307; Yes), itfurther determines whether all active volumes have been extracted (STEP1308). If there is an active volume that has not yet been extracted(STEP 1308; No), the function setting status monitoring program 522returns to the processing at STEP 1302. When the function setting statusmonitoring program 522 determines that all active volumes have beenextracted (STEP 1308; Yes), it ends the function setting statusmonitoring processing.

(4) Operational Examples

Operational examples of the management apparatus 5 to execute thefunction setting status monitoring program 522 based on variousmanagement tables having the foregoing contents are now explained.

After updating the various management tables, the management apparatus 5refers to the pair management table 800 and selects the volumeidentified with volume ID “VOL001” of the storage apparatus 4 identifiedwith storage apparatus ID “ST1” as an active volume. The volume of thestorage apparatus 4 is represented as a combination “ST1. VOL001” of thestorage apparatus ID and the volume ID. The management apparatus 5thereafter extracts “ST2. VOL002” as the standby volume. The managementapparatus 5 additionally extracts “PPC” as the function of the storageapparatus 4 from the function ID field 505 of apparatus ID “ST1” in theapparatus management table 500.

In this case, the management apparatus 5 refers to the PPC set valuefield 905 of the storage network I/F management table 900 and comparesthe PPC set values of “ST1. VOL001” and “ST2. VOL002.” Specifically, thePPC set value of “ST1. VOL001” is 200 MBbps, and the PPC set value of“ST2. VOL002” is null. Thus, the management apparatus 5 warns the systemadministrator that the PPC set values of “ST1. VOL001” and “ST2. VOL002”are different.

The management apparatus 5 sets the function ID “PPC” in the apparatusmanagement table 500 as “processed,” and extracts the function ID “DCR”as the subsequent function of the storage apparatus 4.

In this case, the management apparatus 5 refers to the capacity field10042 of the cache memory management table 1000, and compares the DCRsetting status of “ST1. VOL001” and “ST2. VOL002.” In other words, since“ST1. VOL001” has no DCR setting information, and the DCR settinginformation of “ST2. VOL002” is set to have a capacity of “500 MBbps,”the management apparatus 5 warns the system administrator that “ST1.VOL001” and “ST2. VOL002” have different DCR settings.

Subsequently, the management apparatus 5 sets the function ID “DCR” inthe apparatus management table 500 to “processed,” and extracts thefunction ID “LUSE” as the subsequent function of the storage apparatus4.

In this case, the management apparatus 5 refers to the AGID field 604 ofthe volume allocation management table 600 and the LUSE management table1100, and compares the LUSE configuration information of “ST1. VOL001”and “ST1. VOL002.” Since neither “ST1. VOL001” nor “ST2. VOL002” is avalue set with LUSE, the management apparatus 5 is not required to senda warning, and sets the function ID “LUSE” as “processed.”

Since the management apparatus 5 will have completed extracting allfunctions of the storage apparatus 4 identified with the storageapparatus ID “ST1” as a result of the foregoing process, it sets “ST1.VOL001” as “processed,” and performs similar processing to the otheractive volumes. In this example, however, the processing is ended sincethere are no other active volumes.

FIG. 14 is a diagram showing an example of a warning screen presented bythe function setting status monitoring program 522 in the managementapparatus 5 according to an embodiment of the present invention. Asexplained in the foregoing operational examples, the warning screen 1400shows that the attributes of the PPC function and the DCR function aredifferent regarding “ST1. VOL001” and “ST2. VOL002.”

The system administrator will thereby be able to recognize remote copypair volumes that are inconsistent upon setting the function attributesregarding the volume-related functions of the storage apparatus.

(5) Function Setting Examples (Function Setting Command Program 523)

The function setting examples of this embodiment are now explained.

The function setting command program 523 is a program for checking theapplicability of a request upon issuing a setting request of functionattributes regarding the function of the storage apparatus 4. Morespecifically, the function setting command program 523 receives asetting request of a prescribed function attribute to one storageapparatus 4 having remote copy pair volumes, and checks theapplicability to a prescribed function of a storage apparatus 4 in apair relationship with the foregoing storage apparatus 4. When thefunction setting command program 523 determines that the setting of thefunction attribute is applicable, it commands the setting of functionattributes requested to both storage apparatuses 4. After the functionsetting command program 523 commands the setting of function attributesto the respective storage apparatuses 4 having remote copy pair volumes,if one of the storage apparatuses 4 could not be normally set, itre-commands the restoration of contents of the function attributesbefore the setting to the normally set storage apparatus 4. As describedabove, setting of the function attribute (function setting) includes themeaning of cancelling the function attribute.

FIG. 15 is a flowchart explaining the operation of the function settingcommand program 523 in the management apparatus 5 according to anembodiment of the present invention.

As shown in FIG. 15, foremost, when the function setting command program523 receives a setting request of module attributes in the storageapparatus 4 designating a prescribed volume from the systemadministrator via the user interface, it calls the configurationinformation collection program 521, and updates the volume allocationmanagement table 600, the storage area configuration management table700, the pair management table 800, the network I/F management table900, the cache memory management table 1000, and the LUSE managementtable 1100 to the latest contents (STEP 1501). In this case, thefunction setting command program 523 retains the contents of the setfunction attributes. This is because, as described later, when one ofthe storage apparatuses 4 could not be normally set after commanding thefunction setting to the storage apparatuses 4 having volumes in a pairrelationship, the other normally set storage apparatus 4 can be restoredto the contents of function attributes before the setting.

The function setting command program 523 thereafter refers to the pairmanagement table 800, and confirms whether the volume designated in thesetting request is a pair-defined volume (STEP 1502). In this case, thefunction setting command program 523 may also refer to the volumeallocation management table 600, and extract the volumes used by thesame application program and allocated to the same logical drive asactive volumes and standby volumes, respectively. By way of this, theremote copy pair volumes having an I/O access path that can beselectively switched based on the same path alternating program in thehost computer 3 will be extracted.

When the function setting command program 523 determines that thedesignated volume has not yet been defined as a remote copy pair volume,it sends a setting command of function attributes to the storageapparatus 4 having the foregoing volume (STEP 1503). The functionsetting command program 523 thereby notifies the system administrator ofthe setting result sent from the storage apparatus in response to theforegoing command (STEP 1504), and then ends the processing.

Contrarily, when it is determined that the volume has been defined as aremote copy pair volume, the function setting command program 523thereafter determines whether the setting of function attributes isapplicable to the volume (STEP 1505).

Specifically, the function setting command program 523 refers to theapparatus management table 500, and checks whether the storage apparatus4 having the designated volume comprises the setting-requested function.As the setting-requested functions, for example, there are a DCRfunction, a PPC function, an LUSE function, and the like. When thefunction setting command program 523 determines that the storageapparatus 4 comprises the foregoing function, it checks whether thestorage apparatus 4 comprises resources necessary for setting thefunction attributes. As the resources, for example, there are the unusedstorage capacity of the logical device formed in the storage apparatus4, the unused cache area capacity of the cache memory 45, the unusedbandwidth of the network I/F 42 and so on. The function setting commandprogram 523 refers to the corresponding management table, and checkswhether the storage apparatus 4 comprises the necessary resources foreach function. The function setting command program 523 determines thatthe function setting is applicable when the storage apparatus 4comprises the foregoing function and also comprises the necessaryresources.

For example, if the setting-requested function is “DCR,” the functionsetting command program 523 foremost refers to the cache memorymanagement table 1000, calculates the unused cache area capacity of thecache memory 45 of the storage apparatus 4 designated in the settingrequest, and determines that there are the necessary resources for theDCR setting when the calculated unused cache area capacity is greaterthan the logical storage capacity of the volume to which DCR is to beset. The unused cache area capacity is sought by subtracting the sum ofthe values of the DCR setting information in the capacity field 10042from the value of the capacity field 1003 regarding the designatedstorage apparatus 4.

When the setting-requested function is “PPC,” the function settingcommand program 523 refers to the network I/F management table 900,calculates the unused transfer bandwidth of the network I/F 42 to whichthe volume designated in the setting request belongs, and determinesthat there are the necessary resources for the PPC setting when thecalculated unused transfer bandwidth is greater than the valuedesignated in the setting request. The unused transfer bandwidth issought by subtracting the sum of the values of the PPC set value field905 from the value of the maximum transfer bandwidth field 903 regardingthe designated storage apparatus 4.

When the setting-requested function is “LUSE,” the function settingcommand program 523 determines that there are necessary resources forthe LUSE setting if the storage apparatus 4 has the designated capacityand the volume satisfying the RAID configuration.

When the setting-requested function is “volume creation,” this meansthat the there is an array group having the designated capacity and RAIDconfiguration, or such an array group can be created, and the functionsetting command program 523 determines that there are the necessaryresources for creating the volume if the unused logical storage capacityof the array group is greater than the logical storage capacity of thedesignated volume.

When the function setting command program 523 determines at STEP 1505that the setting of function attributes is not applicable, it notifiesthe system administrator of the non-setting (STEP 1507), and then endsthe processing. Contrarily, when the function setting command program523 determines at STEP 1505 that the setting of function attributes isapplicable, it additionally refers to the pair management table 800,extracts the volume in a pair relationship with the foregoing volume,and similarly determines whether the setting of function attributesregarding the extracted volume is applicable (STEP 1506).

When the function setting command program 523 determines that thesetting of function attributes requested to the volume in a pairrelationship is not applicable, it notifies the system administrator ofthe non-setting (STEP 1507), and then ends the processing.

When the function setting command program 523 determines that thesetting of function attributes requested to the volume in a pairrelationship is applicable, it sends the requested function settingcommand to the respective storage apparatuses 4 having the volume andits remote copy pair volume (STEP 1508). Subsequently, the functionsetting command program 523 confirms whether the storage apparatuses 4defined in a pair relationship have been normally set based on thecompletion status sent from both storage apparatuses 4 in response tothe command (STEP 1509). When the function setting command program 523confirms that both storage apparatuses 4 have been normally set, itnotifies the system administrator of the normal end (STEP 1510), andthen ends the processing.

When at least one of the storage apparatuses 4 indicates an abnormalityin the setting result, the function setting command program 523 sends acommand for returning the normally set storage apparatus 4 to a statebefore the setting to such storage apparatus 4 (STEP 1511). Uponreceiving this command, the storage apparatus 4 restores the contents ofthe various management tables to the status before the functionattribute setting was requested. The function setting command program523 notifies the system administrator of the abnormal contents (STEP1512), and then ends the processing.

The operational example of the function setting command program 523 inthe case of newly creating a volume (remote copy pair volume) to beduplicated is now explained.

When newly creating a volume to be duplicated, the system administratordesignates the active storage apparatus 4 and the standby storageapparatus to which the active volume and the standby volume are to becreated, and designates the storage area configuration such as thecapacity and RAID level of the active volume and the standby volume.When the function setting command program 523 receives a request fromthe system administrator to newly create a duplicated volume, it checkswhether it is possible to create the requested active volume and standbyvolume in the respective storage apparatuses 4.

When the function setting command program 523 determines that it ispossible to create the active volume and the standby volume, it refersto the pair management table 800 and confirms whether the designatedactive storage apparatus 4 and the standby storage apparatus 4 aredefined in a pair relationship.

When the function setting command program 523 confirms that a pairrelationship has been defined, it sends a command to the designatedactive storage apparatus 4 and standby storage apparatus 4 to create avolume according to the designated storage area configuration. Further,the function setting command program 523 sends a command to the storageapparatus 4 for copying data from the created active volume to thestandby volume based on the remote copy function of both storageapparatuses 4. Upon receiving this command, the storage apparatus 4performs initial copy based on the remote copy function. The functionsetting command program 523 thereafter confirms the completion statusshowing that both storage apparatuses 4 have been normally set. Thefunction setting command program 523 notifies the system administratoror the normal end (STEP 1512), and then ends the processing.

As described above, the function setting command program 523 of thisembodiment determines the applicability of setting the functionattributes to the volume and a volume defined in a pair relationshipwith such volume upon setting the function attributes regarding theduplicated volume, and, when it is determined that the setting offunction attributes is applicable to both volumes, the function settingcommand program 523 commands the setting of function attributes of bothvolumes to the storage apparatus 4. It is thereby possible to accuratelyretain the consistency of function attributes between volumes in a pairrelationship.

Second Embodiment

The function setting command program 523 of the foregoing firstembodiment notifies the system administrator of the non-setting inresponse to the function setting request regarding the designated volumeif the storage apparatus having a volume in a pair relationship withsuch designated volume lacks the necessary resources to execute thefunction.

In the second embodiment, if the storage apparatus having a volume in apair relationship lacks the necessary resources to execute the function,provided is a function setting command program 523′ capable of settingas many requested function attributes as possible by waiting for theresources to be released for a given period of time.

Specifically, when the function setting command program 523′ of thisembodiment determines that one or both of the storage apparatuses 4 lackthe necessary resources for setting the function attributes in responseto the setting request of function attributes, it waits for thenecessary resources to be released for a given period of time, and sendsa function setting command to both storage apparatuses 4 when theresources are released and it can allocate the necessary resourceswithin such given period of time.

Thus, while the function setting command program 523′ of this embodimentprocesses the requests in the order received in response to the settingrequest of function attributes regarding a volume-related function onthe one hand, it also preferentially executes processing in response toa setting cancellation request of the volume-related function.

The function setting command program 523′ registers the resources to beallocated in the resource reservation management table, refers to suchresource reservation management table, and confirms the status of theresources to be allocated.

FIG. 16 and FIG. 17 are flowcharts explaining the operation of thefunction setting command program 523′ in the management apparatus 5according to an embodiment of the present invention.

Referring to FIG. 16 and FIG. 17, foremost, when the function settingcommand program 523′ receives a function setting request designating aprescribed volume from the system administrator via the user interface,it calls the configuration information collection program 521, andupdates the volume allocation management table 600, the storage areaconfiguration management table 700, the pair management table 800, thenetwork I/F management table 900, the cache memory management table1000, and the LUSE management table 1100 to the latest contents (STEP1601).

The function setting command program 523′ thereafter refers to the pairmanagement table 800, and confirms whether the volume designated in therequest is duplicated (STEP 1602). In the foregoing case, the functionsetting status monitoring program 522 may also refer to the volumeallocation management table 600, and extract the volumes used by thesame application program and allocated to the same logical drive asactive volumes and standby volumes, respectively.

When the function setting command program 523′ determines that thedesignated volume has not yet been defined in a pair relationship, itsends a setting command of the requested function attributes to thestorage apparatus 4 having the foregoing volume (STEP 1603). Thefunction setting command program 523′ thereby notifies the systemadministrator of the setting result sent from the storage apparatus inresponse to the foregoing command (STEP 1604), and then ends theprocessing.

Contrarily, when it is determined that the volume has been defined in apair relationship, the function setting command program 523′ extractsthe storage apparatus 4 having a volume in a pair relationship with thevolume according to the pair management table 800 (STEP 1605).

Subsequently, the function setting command program 523′ refers to thevarious management tables required for the setting of the requestedfunction attributes, and determines whether the storage apparatusforming a pair with the foregoing storage apparatus possesses thenecessary resources for the function setting (STEP 1606).

When it is determined that the storage apparatus does not possess thenecessary resources, the function setting command program 523′ sets 0 inthe retry counter i, and repeats the following processing for aprescribed retry count N−1 (STEP 1607).

Foremost, the function setting command program 523′ notifies the systemadministrator that the management apparatus 5 is in a resource releasewait state (STEP 1608), and thereafter waits for the necessary resourcesto be released for a predetermined period of time (STEP 1609). Afterwaiting for a given period of time, the function setting command program523′ once again refers to the various management tables corresponding tothe requested function setting, and determines whether the storageapparatus forming a pair with the foregoing storage apparatus has thenecessary resources for the function setting (STEP 1610).

When the function setting command program 523′ determines that theresources have not yet been allocated (time-out), it increments thevalue of the retry counter i by 1 (STEP 1607), and performs thesubsequent processing (STEP 1608 to 1610). When the value of the retrycounter i reaches the prescribed retry count N, the function settingcommand program 523′ notifies the system administrator of thenon-setting (STEP 1611), and ends the processing.

When it is determined at STEP 1606 or STEP 1610 that the storageapparatus has the necessary resources, the function setting commandprogram 523′ sends the setting command of the requested functionattributes to both storage apparatuses 4 (FIG. 17; STEP 1701). Uponreceiving this command, the respective storage apparatuses 4 execute thesetting of function attributes, and send the completion status to themanagement apparatus 4. The function setting command program 523′confirms whether both storage apparatuses 4 have been normally set basedon the completion status sent from both storage apparatuses (STEP 1702).When the function setting command program 523′ confirms that bothstorage apparatuses 4 have been normally set, it notifies the systemadministrator of the normal end (STEP 1703), and then ends theprocessing.

When at least one of the storage apparatuses 4 indicates an abnormalityin the setting result, the function setting command program 523′ sends acommand for returning the normally set storage apparatus 4 to a statebefore the setting to such storage apparatus 4 (STEP 1704). Uponreceiving this command, the storage apparatus 4 restores the contents ofthe various management tables to the status before the functionattribute setting was requested. The function setting command program523′ notifies the system administrator of the abnormal contents (STEP1705), and then ends the processing.

As described above, the function setting command program 523′ of thisembodiment continues to wait for a given period of time until theresources are allocated upon setting the function attributes of aduplicated volume, and determines that the setting of functionattributes is applicable when the resources are allocated beforetime-out as described above. By way of this, the function attributes canbe set while giving consideration to the resources that constantlychange throughout the various setting processes in the storage apparatus4.

Third Embodiment

This embodiment describes a computer system configured to include astorage controller comprising a “virtual volume function” to be providedto the host computer by disguising the volume in the storage apparatusas its own volume, which manages the function attributes regarding thevolume-related function duplicated between the storage controllers.

In an environment where the virtual volume function is executed, theactual application data (data entity) to be handled by the applicationprogram in the host computer is stored in a volume formed in thephysical device of the storage apparatus, and mapping information of thevolume in the storage apparatus storing the data entity is stored in thevolume provided by the storage controller associated with the volume.

In the following explanation, a volume formed in the physical device ofthe storage apparatus is referred to as a “real volume” (R-VOL), and avolume associated with the real volume and provided by the storagecontroller to the host computer is referred to as a “virtual volume”(V-VOL).

A virtual volume being used by the application program of the hostcomputer 3 is referred to as an active virtual volume, and the storagecontroller 6 that provides the active virtual volume is referred to asan active storage controller. Further, a virtual volume provided byanother storage controller 6 and sharing the real volume associated withthe active virtual volume; namely, a virtual volume associated with theexternal volume is referred to as a standby virtual volume, and thestorage controller 6 providing the standby virtual volume is referred toas a standby storage controller.

(1) System Configuration

(1-1) Configuration of Computer System

FIG. 18 is a diagram showing a configuration of the computer system 1according to an embodiment of the present invention. In the computersystem 1 of this embodiment, at least two or more external storagecontrollers 6 that control the storage apparatuses comprising physicaldevices provide the logical volume in the storage apparatus as a virtualvolume to the host computer by using the virtual volume function.

As shown in FIG. 18, the computer system 1 comprises two or more storagecontrollers 6 connected to the host computer 3 via the first storagenetwork 21, and storage apparatuses 4′ externally connected to thestorage controllers 6 via a second storage network 22. The computersystem 1 further comprises a management apparatus 5 connected to thehost computer 3, the storage apparatus 4′, and the storage controller 6via the management network 2B.

The first storage network 21, as with the foregoing storage network 2A,is used for the communication based on an I/O access between the hostcomputer 3 and the storage controller 6. The second storage network 22is used for the communication based on an I/O access between the storagecontroller 6 and the storage apparatuses 4′. In this embodiment, thefirst storage network 21 and the second storage network 22 may beconfigured from a fibre channel protocol-based SAN (FC-SAN). In FIG. 18,although the first storage network 21 and the second storage network 22are illustrated as separate networks, they may also be configured fromthe same storage network. However, even in cases where they areconfigured from the storage network, the host computer 3 does notdirectly I/O access the storage apparatuses 4′, and is configured to I/Oaccess the storage apparatuses 4′ under the control of the storagecontroller 6.

The management network 2B is a network to be used for the communicationupon the management apparatus 5 managing the respective apparatuses inthe computer system 1. In this embodiment, the management network 2B maybe configured from an IP protocol-based LAN.

The host computer 3 of this embodiment may also comprise an alternatepath module in the computer system 1 of this embodiment. Thus, when afailure or maintenance work arises in the active storage controller andthe host computer 3 is not able to use the active virtual volume, thealternate path program in the host computer 3 realizes the nondisruptiveoperation of the application programs by switching the I/O access pathto the standby virtual volume provided by the standby storagecontroller.

The external volume-related function of the storage apparatuses 4′ inthis embodiment is dependent on the setting of function attributesregarding the functions of the storage controller 6 providing thevirtual volume associated with the real volume.

(1-2) Configuration of Storage Controller

FIG. 19 is a diagram showing a configuration of a storage controller 6in the computer system 1 according to an embodiment of the presentinvention. As shown in FIG. 19, the storage controller (SC) 6 comprisesan internal controller 61 for controlling the overall storage controller6, a memory 62 that serves as a main memory of the internal controller61, one or more network interfaces 63 for connecting to the firststorage network 21, one or more external connection ports 64 forconnecting to the second storage network 22, a cache memory 65, and amanagement port 66 for connecting to the management network 2B.

The memory 62 is configured from, for example, a RAM and/or a ROM, andstores various programs and data to be used by the processor (not shown)of the internal controller 61. The various programs are arbitrarilyloaded into the memory 62 in part or in whole from an auxiliary storageapparatus not shown. FIG. 19 representatively shows an I/O processingprogram 621, a storage configuration program 622, and a virtual volumeprogram 623.

The basic functions of the I/O processing program 621 and the storageconfiguration program 622 are the same as the foregoing I/O processingprogram 421 and the storage configuration program 422, and only differregarding the part concerning the processing to be performed to theexternally connected storage apparatuses 4′.

The virtual volume program 623 provides the volume (external volume) inthe storage apparatus 4′ as the virtual volume in the storage controller6 to the host computer 3. The storage controller 6 forms a virtualvolume in relation to the external volume of the storage apparatus 4′ byexecuting the virtual volume program 623, converts the address of thevirtual volume shown by the I/O access into an address of the externalvolume when there is an I/O access from the host computer 3 to thevirtual volume, and thereby realizes the I/O access to the externalvolume.

(1-3) Configuration of Management Apparatus 5

FIG. 20 is a diagram showing a configuration of the management apparatus5 according to an embodiment of the present invention. The configurationof the management apparatus 5 of this embodiment is the same as theforegoing embodiments, but the programs to be executed and themanagement tables are different. Specifically, the management apparatus5 of this embodiment retains an external connection configurationmanagement table 2100 in substitute for retaining the storage areaconfiguration management table 700 and the pair management table 800.

(2) External Connection Configuration Management Table 2100

FIG. 21 is a diagram showing an example of the external connectionconfiguration management table 2100 in the management apparatus 5according to an embodiment of the present invention. The externalconnection configuration management table is a table for managing therelation of the storage controller 6 and the storage apparatus 4, andthe relation of the virtual volume and external volume provided by thestorage controller 6.

As shown in FIG. 21, the external connection configuration managementtable 2100 is configured from a storage controller ID field 2101 forregistering identifiers for uniquely identifying the storage controller6 in the management apparatus 5, a virtual volume ID field 2102 forregistering identifiers for uniquely identifying the virtual volume ofthe storage controller 6 in the storage controller 6, an externalconnection storage apparatus ID field 2103 for registering identifiersfor uniquely identifying the external connection storage apparatusstoring the external volume of the virtual volume in the managementapparatus 5, and an external volume ID field 2104 [for registeringidentifies] for uniquely identifying the external volume of the virtualvolume in the external connection storage apparatus 4.

When the fields other than the storage controller ID field 2101 and theexternal connection storage apparatus ID field 2103 (i.e., the virtualvolume ID field 2102 and external volume ID field 2104 in this example)are null, this shows that the storage controller 6 and the externalconnection storage apparatus are of an external connection relation(correspondence relation).

The management apparatus 6 creates and updates the external connectionconfiguration management table 2100 by executing the configurationinformation collection program 523.

(3) Explanation on Operation of Programs

The programs for managing the function attributes of all virtual-volumerelated functions sharing the external volume are now explained.

(3-1) Configuration Information Collection Program 521

The configuration information collection program 521 is a program forcollecting the configuration information from the storage apparatus 4and the host computer 3. The configuration information collectionprogram 521 is periodically executed under the control of the processorof the management apparatus 5. Otherwise, the configuration informationcollection program 521 may also be executed based on an executioncommand from the system administrator, or according to a call fromanother program in the management apparatus 5.

Specifically, the configuration information collection program 521refers to the apparatus management table 500, and issues a configurationinformation request to all storage controllers 6 and the host computer 3registered in the apparatus ID field 501 using the IP addresses of theIP address field 504. The storage controller 6 that received theconfiguration information request collects its own configurationinformation by executing the storage configuration program, and sendssuch configuration information to the management apparatus 5. Similarly,the host computer 3 that received the configuration information requestcollects its own configuration information, and sends such configurationinformation to the management apparatus 5. The configuration informationcollection program 521 updates the corresponding fields of variousmanagement tables including the volume allocation management table 600,the storage area configuration management table 700, the pair managementtable 800, the network I/F management table 900, the cache memorymanagement table 1000, and the LUSE management table 1100 based on theconfiguration information sent from the respective apparatuses to bemanaged by the management apparatus 5.

(3-2) Function Setting Status Monitoring Program 522

The function setting status monitoring program 522 of this embodimenthas been applied to an external connection storage apparatus. Thefunction setting status monitoring program 522 of this embodimentconfirms the consistency of the function attributes as with theforegoing embodiments upon setting the virtual volume-related functionattributes sharing the external volume.

FIG. 22 is a flowchart explaining the operation of the function settingstatus monitoring program 522 in the management apparatus 5 according toan embodiment of the present invention.

As shown in FIG. 22, when the function setting status monitoring program522 is executed, it calls the configuration information collectionprogram 523, and updates the various management tables to the latestcontents (STEP 2201).

The function setting status monitoring program 522 thereafter refers tothe external connection configuration management table 2100, andextracts an active virtual volume sharing the external volume (STEP2202). The function setting status monitoring program 522 furtherextracts a standby virtual volume sharing the extracted active virtualvolume and its corresponding external volume (STEP 2203).

Subsequently, the function setting status monitoring program 522extracts one virtual volume-related function provided by the activestorage controller 6 (STEP 2204). The function setting status monitoringprogram 522 thereafter confirms whether the setting of functionattributes pertaining to the active virtual volume and the standbyvirtual volume is equal (STEP 2205).

When the function setting status monitoring program 522 determines thatthe extracted function attributes are not equal, it presents to thesystem administrator a warning screen showing that the settings of thefunction attributes of the active virtual volume and the standby virtualvolume are different (STEP 2206).

The function setting status monitoring program 522 determines whetherall function related to the virtual volume have been extracted (STEP2207), and, when there is a function that has not yet been extracted(STEP 2207; No), it returns to the processing at STEP 2204. Further,when the function setting status monitoring program 522 determines thatall function have been extracted (STEP 2207; Yes), it additionallydetermines whether all active virtual volumes have been extracted (STEP2208). If there is an active virtual volume that has not yet beenextracted (STEP 2208; No), the function setting status monitoringprogram 522 returns to the processing at STEP 2202. When the functionsetting status monitoring program 522 determines that all active virtualvolumes have been extracted (STEP 2208; Yes), it ends the functionsetting status monitoring processing.

(3-3) Function Setting Command Program 523

The function setting command program 523 of this embodiment is amodification of the foregoing function setting command monitoringprogram 523 so that it will be applicable to a storage system configuredfrom the storage apparatuses 4′ externally connected to the storagecontroller 6. Specifically, the function setting command program 523 ofthis embodiment confirms the consistency of the function attributes aswith the foregoing embodiments upon setting the virtual volume-relatedfunction attribute sharing the external volume, and maintains thefunction attributes by restoring the function attributes to the functionattributes before the setting when it is determined that there is noconsistency.

FIG. 23 is a flowchart explaining the operation of the function settingcommand program 523 in the management apparatus 5 according to anembodiment of the present invention.

As shown in FIG. 23, foremost, when the function setting command program523 receives a function setting request designating a prescribed volumefrom the system administrator via the user interface, it calls theconfiguration information collection program 521, collects theconfiguration information, and updates the various management tables(STEP 2301).

The function setting command program 523 thereafter refers to theexternal connection configuration management table 2100, and confirmswhether there is a virtual volume sharing the real volume correspondingto the virtual volume designated in the setting request of functionattributes (STEP 2302).

When the function setting command program 523 determines that there isno virtual volume sharing the real volume corresponding to thedesignated virtual volume, it sends a setting command of functionattributes to the storage controller 6 handling the designated virtualvolume (STEP 2303). The function setting command program 523 thereafternotifies the system administrator of the setting result sent from thestorage controller 6 in response to the command (STEP 2304), and thenends the processing.

When it is determined that there is a virtual volume sharing theexternal volume corresponding to the designated virtual volume, thefunction setting command program 523 determines whether the setting ofrequested function attributes is applicable to the storage controller 6providing the virtual volume designated in the setting request offunction attributes (STEP 2304). As the determination processing at STEP2304, the same determination as the applicability determination of thesetting of the requested function attributes to the foregoing storageapparatus 4 may be applied.

When it is determined that the setting of the requested functionattributes is not applicable, the function setting command program 523notifies the system administrator of the non-setting (STEP 2307), andthen ends the processing. Further, when the function setting commandprogram 523 determines that the setting of requested function attributesis applicable at STEP 2305, it further refers to the external connectionconfiguration management table 2100, extracts the storage controller 6providing the virtual volume sharing the real volume with the designatedvirtual volume, and determines whether the requested function setting isapplicable to the extracted storage controller 6 (STEP 2306).

When the function setting command program 523 determines that functionsetting requested regarding the virtual volume sharing the real volumeis not applicable, it notifies the system administrator of thenon-setting (STEP 2307), and ends the processing.

When it is determined that the requested function setting is applicable,the function setting command program 523 sends a command for setting therequested function attributes to the storage controller 6 providing thevirtual volume designated in the setting request of function attributesand all storage controllers 6 providing the virtual volume sharing theexternal volume with the foregoing virtual volume (STEP 2308). Thefunction setting command program 523 thereafter confirms whether allstorage controllers 6 have been normally set based on the completionstatus sent from all storage controllers 6 in response to the foregoingcommand (STEP 2309). When the function setting command program 523confirms that all storage controllers 6 have been normally set, itnotifies the system administrator of the normal end (STEP 2310), andthen ends the processing.

When at least one of the storage controllers 6 indicates an abnormalityin the setting result, the function setting command program 523 sends acommand for returning the normally set storage controller 6 to a statebefore the setting to such storage controller 6 (STEP 2311). Uponreceiving this command, the storage controller 6 restores the contentsof the various management tables to the state before the functionattribute setting was requested. The function setting command program523 notifies the system administrator of the abnormal contents (STEP2312), and then ends the processing.

Thus, the consistency of the function attributes can be retained for allvirtual volume-related functions sharing the external volume.

The foregoing embodiments are exemplifications for explaining thepresent invention, and are not intended to limit the scope of thepresent invention. The present invention may be implemented in variousmodes so as long as it does not deviate from the gist of this invention.

For example, to modify the foregoing function setting command program523′ for allocating the resource so that it is applicable to a storagesystem configured from the storage apparatus 4′ connected externally tothe storage controller 6 is within the scope of the present invention.

The present invention can be broadly applied to a storage system thatprovides to a host computer an active logical volume and a standbylogical volume in different storage apparatuses associated as remotecopy pair volumes.

The present invention can also be broadly applied to a storage systemthat provides a logical volume in the storage apparatus as a virtualvolume to the host computer.

What is claimed is:
 1. A storage system, comprising: a first storageapparatus having at least one volume to be provided to a host computer;a second storage apparatus connected to the first storage apparatus andhaving a second volume having a pair relationship with a first volume inthe first storage apparatus; and a management apparatus connected to thefirst storage apparatus and the second storage apparatus, and configuredto manage the first storage apparatus and the second storage apparatus;wherein the management apparatus includes a user interface for settingan attribute of a function related to at least one volume of the firststorage apparatus and an attribute of a function related to at least onevolume of the second storage apparatus; wherein the management apparatuscompares an attribute of a first function related to the first volumeand an attribute of a second function related to the second volume;wherein the management apparatus uses the result of the comparison toset the attribute of the second function related to the second volume tobe consistent with the attribute of the first function related to thefirst volume, for the first volume and the second volume having the pairrelationship; and wherein, after the set the attribute operation, themanagement apparatus determines whether the first volume and the secondvolume have been each set normally, and when at least one of the firstvolume and the second volume could not be set normally, commandsrestoration of the first volume or the second volume that has setnormally, to a state before the set the attribute operation.
 2. Thestorage system according to claim 1, wherein the first storage apparatusretains the attribute of the first function related to the first volume;wherein the second storage apparatus retains the attribute of the secondfunction related to the second volume; and wherein the managementapparatus respectively acquires the attribute of the first function andthe attribute of the second function from the first storage apparatusand the second storage apparatus, and compares the acquired attribute ofthe first function and the acquired attribute of the second function. 3.A storage system, comprising: a storage apparatus having a real volumeformed in a storage medium holding a data entity to be handled in a hostcomputer; a first storage controller connected to the storage apparatusand configured to control the storage apparatus; a second storagecontroller connected to the storage apparatus and configured to controlthe storage apparatus; and a management apparatus connected to thestorage apparatus, the first storage controller and the second storagecontroller, and configured to manage the storage apparatus, the firststorage controller and the second storage controller, wherein the firststorage controller includes a first virtual volume associated with thereal volume, the first virtual volume being provided to an applicationprogram in the host computer, wherein the second storage controllerincludes a second virtual volume associated with the real volume, thesecond virtual volume being provided to an application program in thehost computer and having a pair relationship with the first virtualvolume, and wherein the management apparatus receives a setting requestof an attribute of a function related to the first virtual volumedirected to the first storage controller via the user interface, anduses the setting request to set the attribute; wherein the managementapparatus compares an attribute of a first function related to the firstvirtual volume and an attribute of a second function related to thesecond virtual volume; wherein the management apparatus uses the resultof the comparison to set the attribute of the second function related tothe second virtual volume to be consistent with the attribute of thefirst function related to the first virtual volume, for the firstvirtual volume and the second virtual volume having the pairrelationship; and wherein, after the set the attribute operation, themanagement apparatus determines whether the first virtual volume and thesecond virtual volume have been each set normally, and when at least oneof the first virtual volume and the second virtual volume could not beset normally, commands restoration of the first virtual volume or thesecond virtual volume that has set normally, to a state before the setthe attribute operation.
 4. The storage system according to claim 3,wherein the management apparatus determines whether the first storagecontroller and said second storage controller can allocate a resourcenecessary to set the attribute of the function in the received settingrequest.
 5. The storage system according to claim 4, wherein when themanagement apparatus determines that the first storage controller andsaid second storage controller are not able to allocate the necessaryresource, the management apparatus waits for a given period of time, andthereafter once again determines whether the first storage controllerand the second storage controller can allocate the necessary resource.6. The storage system according to claim 5, wherein when the managementapparatus determines that the first storage controller and the secondstorage controller can allocate the necessary resource, the managementapparatus commands function setting to the first storage controller andthe second storage controller.
 7. The storage system according to claim1, wherein the function includes at least one of: a volume creationfunction, a band limiting function, a cache residency function, a volumeexpansion function, and a remote copy function.
 8. The storage systemaccording to claim 3, wherein the function includes at least one of: avolume creation function, a band limiting function, a cache residencyfunction, a volume expansion function, and a remote copy function.
 9. Aprocessor-implemented storage method effected within a storage systemincluding: a first storage apparatus having at least one volume to beprovided to a host computer; a second storage apparatus connected to thefirst storage apparatus and having a second volume having a pairrelationship with a first volume in the first storage apparatus; and amanagement apparatus connected to the first storage apparatus and thesecond storage apparatus, and configured to manage the first storageapparatus and the second storage apparatus; wherein the managementapparatus includes a user interface for setting an attribute of afunction related to at least one volume of the first storage apparatusand an attribute of a function related to at least one volume of thesecond storage apparatus; the storage method comprising: comparing anattribute of a first function related to the first volume and anattribute of a second function related to the second volume; using theresult of the comparison to set the attribute of the second functionrelated to the second volume to be consistent with the attribute of thefirst function related to the first volume, for the first volume and thesecond volume having the pair relationship; and after operation of theset of the attribute, determining whether the first volume and thesecond volume have been each set normally, and when at least one of thefirst volume and the second volume could not be set normally, commandingrestoration of the first volume or the second volume that has setnormally, to a state before the set the attribute operation.
 10. Thestorage method according to claim 9, wherein the first storage apparatusretains the attribute of the first function related to the first volume;wherein the second storage apparatus retains the attribute of the secondfunction related to the second volume; and the storage method furthercomprising respectively acquiring the attribute of the first functionand the attribute of the second function from the first storageapparatus and the second storage apparatus, and comparing the acquiredattribute of the first function and the acquired attribute of the secondfunction.
 11. A processor-implemented storage method effected within astorage system including: a storage apparatus having a real volumeformed in a storage medium holding a data entity to be handled in a hostcomputer; a first storage controller connected to the storage apparatusand configured to control the storage apparatus; a second storagecontroller connected to the storage apparatus and configured to controlthe storage apparatus; and a management apparatus connected to thestorage apparatus, the first storage controller and the second storagecontroller, and configured to manage the storage apparatus, the firststorage controller and the second storage controller, wherein the firststorage controller includes a first virtual volume associated with thereal volume, the first virtual volume being provided to an applicationprogram in the host computer, wherein the second storage controllerincludes a second virtual volume associated with the real volume, thesecond virtual volume being provided to an application program in thehost computer and having a pair relationship with the first virtualvolume, the storage method comprising: receiving a setting request of anattribute of a function related to the first virtual volume directed tothe first storage controller via the user interface, and using thesetting request to set the attribute; comparing an attribute of a firstfunction related to the first virtual volume and an attribute of asecond function related to the second virtual volume; using the resultof the comparison to set the attribute of the second function related tothe second virtual volume to be consistent with the attribute of thefirst function related to the first virtual volume, for the firstvirtual volume and the second virtual volume having the pairrelationship; and after operation of the set the attribute, determiningwhether the first virtual volume and the second virtual volume have beeneach set normally, and when at least one of the first virtual volume andthe second virtual volume could not be set normally, commandingrestoration of the first virtual volume or the second virtual volumethat has set normally, to a state before the set the attributeoperation.
 12. The storage method according to claim 11, furthercomprising determining whether the first storage controller and saidsecond storage controller can allocate a resource necessary to set theattribute of the function in the received setting request.
 13. Thestorage method according to claim 12, further comprising, whendetermining that the first storage controller and said second storagecontroller are not able to allocate the necessary resource, waiting fora given period of time, and thereafter once again determining whetherthe first storage controller and the second storage controller canallocate the necessary resource.
 14. The storage method according toclaim 13, further comprising, when determining that the first storagecontroller and the second storage controller can allocate the necessaryresource, commanding function setting to the first storage controllerand the second storage controller.
 15. The storage method according toclaim 9, wherein the function includes at least one of: a volumecreation function, a band limiting function, a cache residency function,a volume expansion function, and a remote copy function.
 16. The storagemethod according to claim 11, wherein the function includes at least oneof: a volume creation function, a band limiting function, a cacheresidency function, a volume expansion function, and a remote copyfunction.